package com.woniuxy.common.exception;

import com.woniuxy.common.enums.ResultCode;

/**
 * 自定义断言类
 */
public class Assert {

    /**
     * 断言方法
     *
     * @param condition  如果条件成立则抛出异常
     * @param resultCode 异常错误码对象
     */
    public static void error(boolean condition, ResultCode resultCode) {
        // 如果条件成立，则抛出业务异常
        if (condition) {
            throw new BookBusinessException(resultCode);
        }
    }

    /**
     * 对象非空断言方法，如果对象为空则抛出异常
     *
     * @param obj        待检查的对象，如果为null则抛出异常
     * @param resultCode 异常错误码对象
     */
    public static void error(Object obj, ResultCode resultCode) {
        // 检查对象是否为空，为空则抛出业务异常
        if (obj == null) {
            throw new BookBusinessException(resultCode);
        }
    }

}
